The present invention relates to an associative matrix training method and apparatus for a decoding scheme using an associative matrix, and a storage medium therefor and, more particularly, to an associative matrix training method and apparatus in decoding a an error-correcting block code by using an associative matrix.
Conventionally, in decoding an error-correcting code by using an associative matrix, the associative matrix associates an original word before encoding and a code word after encoding. In this decoding scheme, an associative matrix is obtained by training. In an associative matrix training method, a code word and an associative matrix are calculated. The associative matrix calculation is applied to the code word. Each component of the calculation result is compared with a preset threshold value “±TH”, for updating the associative matrix. If a component of the original word before encoding is “+1”, a threshold value “+TH” is set. Only when the calculation result is smaller than “+TH”, each contributing component of the associative matrix is updated by “±ΔW”.
If a component of the original word is “0”, a threshold value “−TH” is set. Only when the corresponding calculation result is larger than “−TH”, each component of the associative matrix is updated by “±ΔW”. This associative matrix training is repeated for all the code words and stopped after an appropriate number of cycles, thereby obtaining a trained associative matrix.
In such a conventional associative matrix training method, since the number of times of training at which the associative matrix training should be stopped is unknown, the training is stopped at an appropriate number of times. Hence, a sufficient number of times of training is required more than necessity to learn all code words, and a long time is required for training. Even when a sufficient number of times of training is ensured, for a certain code word, the calculation result only repeatedly increases or decreases from the threshold value “+TH” or “−TH” for a predetermined number of times or more, and associative matrix training is not actually executed for a predetermined number of times or more.
Additionally, since a value much smaller than the threshold value “TH” is set as an update value “ΔW” of an associative matrix, a very large number of training cycles is required for an associative matrix training to converge for all the code words. Furthermore, since no margin for a bit error of “±TH” is ensured for code words whose calculation results repeatedly increase or decrease within the threshold values “+TH” and “−TH”, the error rate changes depending on the code word.